home *** CD-ROM | disk | FTP | other *** search
/ PC Electronics Plus 3 / PC Electronics Plus 3.iso / subdwg / lsp / item.lsp < prev    next >
Lisp/Scheme  |  1994-11-14  |  2KB  |  52 lines

  1. ;*******************************************************************
  2. ;* Comando item
  3. ;* Este comando se usa para dibujar el circulo, la flecha, el numero y las
  4. ;* lineas correspondientes a un simbolo de item.
  5. ;*
  6. ;*
  7. ;*
  8.  
  9. (defun c:item ()
  10.   ; !!!!!!!!!!!
  11.   ;acordarme de quitar el osnap, commandecho etc.
  12.   ;
  13.   
  14.   (setq osmode (getvar "osmode"))
  15.   (setq cmdecho (getvar "cmdecho"))
  16.   (setq gridmode (getvar "gridmoe"))
  17.   (setvar "gridmode" 0)
  18.   (setvar "cmdecho" 0)
  19.   (setvar "osmode" 0)
  20.   
  21.   (setq pi 3.141516)
  22.  
  23.     (setq escala (getdist "\nEscala: "))
  24.     (while t
  25.         (setq p1 nil)
  26.         (setq p2 nil)
  27.         (while (not p1) (setq p1 (getpoint "\nPunto: ")))
  28.         (while (not p2) (setq p2 (getpoint "\nPunto: ")))
  29.         (setq angulo (angle p1 p2))
  30.         (command "INSERT" "FLECHA" p1 escala escala (+ 180 (/ (* 180.0 angulo) pi)))
  31.         (command "line" p1 p2 "")
  32.         (setq puntoAnterior2 p1)
  33.         (setq puntoAnterior p2)
  34.             (while puntoAnterior
  35.                 (setq punto (getpoint "\nPunto: "))
  36.                 (if (and punto puntoAnterior)
  37.                     (command "line" punto puntoAnterior "")
  38.                     (progn
  39.                         (setq angulo (angle puntoAnterior2 puntoAnterior))
  40.                         (setq numero (getint "\Numero: "))
  41.                         (command "insert" "circulo" (polar puntoAnterior angulo escala) 
  42.                                      escala escala 0 numero)
  43.                      )
  44.                  )
  45.            (setq puntoAnterior2 puntoAnterior)
  46.            (setq puntoAnterior punto)
  47.            )
  48.       )
  49.     (setvar "gridmode" gridmode)
  50.     (setvar "osmode" osmode)
  51.     (setvar "cmdecho" cmdecho)
  52.   )